﻿using System;
using Core.Mgrs;
using Global.Mgr;
using UnityEngine;

namespace Core
{
    /// <summary>
    /// 扣扣全局
    /// </summary>
    public static class KKGL
    {
        /// <summary>
        /// UI事件
        /// </summary>
        public static EventSys UIEvent { get; } = new EventSys();

        /// <summary>
        /// 系统事件
        /// </summary>
        public static EventSys SysEvent { get; } = new EventSys();

        /// <summary>
        /// 主Mono
        /// </summary>
        public static MonoBehaviour MainBehaviour { get; set; }

        public static ResMgr ResMgr { get; set; }

        public static AudioMgr AudioMgr { get; set; }

        /// <summary>
        /// 游戏设置
        /// </summary>
        public static GameSettingMgr GameSettingMgr { get; set; }

        /// <summary>
        /// 网络管理器
        /// </summary>
        public static WebMgr WebMgr { get; set; }

        /// <summary>
        /// 通用的配置表加载器
        /// </summary>
        public static ConfigMgr ConfigMgr { get; set; }

        /// <summary>
        /// 所有的数据Model管理器
        /// </summary>
        public static ModelMgr ModelMgr { get; set; }

        /// <summary>
        /// 场景管理器
        /// </summary>
        public static SceneMgr SceneMgr { get; set; }


        public static CancelTokenMgr CancelTokenMgr { get; set; }

        /// <summary>
        /// 计时器
        /// </summary>
        public static TimerMgr TimerMgr { get; set; }
    }
}